#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 50
#define InitSize 100

typedef int Elem;

typedef struct {
	Elem data[MAXSIZE];
	int len;
} SqlList;
typedef struct {
	Elem* data;
	int len, maxSize;
} SeqList;
void deleteByCondition(SqlList& L, Elem& e);
void printList(SqlList& L);
void reverse(SqlList& L);
void deleteOne(SqlList& L, Elem e);

bool deletefromStoT(Elem s, Elem t, SqlList& L);
bool deleteRepeat(SqlList& L);
bool combineTwoList(SqlList& l1, SqlList& l2, SqlList& c);
bool reverse(SqlList& L, int start, int end, int arrySize);
void exchange();
void exchangeAndinsert(SqlList& L, Elem e);
void universalReverse(SqlList& L, int from, int to);